1. Source Search Cointegration Combinations

source("./scripts/04-search-cointegration.R", echo = FALSE, print.eval = FALSE)
## Parsed with column specification:
## cols(
##   date_unix = col_double(),
##   date_time = col_datetime(format = ""),
##   high = col_double(),
##   low = col_double(),
##   open = col_double(),
##   close = col_double(),
##   volume = col_double(),
##   quote_volume = col_double(),
##   weighted_average = col_double(),
##   currency_pair = col_character(),
##   period = col_integer(),
##   source = col_character()
## )
## [1] "1: Testing for time resolution 900 from 2017-07-07 to 2017-08-23."
## [1] "2: Testing for time resolution 900 from 2017-01-29 to 2017-03-06."
## [1] "3: Testing for time resolution 7200 from 2017-08-10 to 2017-09-27."
## [1] "4: Testing for time resolution 300 from 2017-03-16 to 2017-04-11."
## [1] "5: Testing for time resolution 900 from 2017-06-03 to 2017-06-18."
## [1] "6: Testing for time resolution 900 from 2017-04-17 to 2017-06-01."
## [1] "7: Testing for time resolution 7200 from 2017-08-19 to 2017-10-03."
## [1] "8: Testing for time resolution 14400 from 2017-02-27 to 2017-03-12."
## [1] "9: Testing for time resolution 300 from 2017-05-12 to 2017-06-04."
## [1] "10: Testing for time resolution 86400 from 2017-02-08 to 2017-03-28."
## # A tibble: 10 x 14
##    df_stat_mean crit_value_1pct_mean crit_value_5pct_mean
##           <dbl>                <dbl>                <dbl>
##  1    -3.051071                -3.43                -2.86
##  2    -2.442145                -3.43                -2.86
##  3    -2.413120                -3.43                -2.86
##  4    -3.326170                -3.43                -2.86
##  5    -1.997779                -3.43                -2.86
##  6    -3.263747                -3.43                -2.86
##  7    -2.594638                -3.43                -2.86
##  8    -2.237029                -3.51                -2.89
##  9    -3.767018                -3.43                -2.86
## 10    -2.327580                -3.58                -2.93
## # ... with 11 more variables: crit_value_10pct_mean <dbl>,
## #   half_life_mean <dbl>, df_stat_median <dbl>,
## #   crit_value_1pct_median <dbl>, crit_value_5pct_median <dbl>,
## #   crit_value_10pct_median <dbl>, half_life_median <dbl>,
## #   time_resolution <dbl>, start_date <date>, end_date <date>,
## #   length <time>
## Parsed with column specification:
## cols(
##   df_stat = col_double(),
##   crit_value_1pct = col_double(),
##   crit_value_5pct = col_double(),
##   crit_value_10pct = col_double(),
##   half_life = col_double(),
##   time_resolution = col_integer(),
##   start_date = col_date(format = ""),
##   end_date = col_date(format = ""),
##   length = col_integer()
## )
## # A tibble: 18,600 x 9
##      df_stat crit_value_1pct crit_value_5pct crit_value_10pct   half_life
##        <dbl>           <dbl>           <dbl>            <dbl>       <dbl>
##  1 -3.012175           -3.43           -2.86            -2.57  384.672689
##  2 -3.162462           -3.43           -2.86            -2.57  560.900234
##  3 -2.598657           -3.43           -2.86            -2.57   44.754316
##  4 -3.835017           -3.43           -2.86            -2.57 1004.935943
##  5 -2.582041           -3.43           -2.86            -2.57  223.135158
##  6 -2.476513           -3.43           -2.86            -2.57  827.426087
##  7 -2.656168           -3.43           -2.86            -2.57   27.449263
##  8 -1.769557           -3.44           -2.87            -2.57    8.631061
##  9 -3.428251           -3.43           -2.86            -2.57  789.819443
## 10 -1.854896           -3.46           -2.88            -2.57   44.109767
## # ... with 18,590 more rows, and 4 more variables: time_resolution <int>,
## #   start_date <date>, end_date <date>, length <int>
## Parsed with column specification:
## cols(
##   df_stat_mean = col_double(),
##   crit_value_1pct_mean = col_double(),
##   crit_value_5pct_mean = col_double(),
##   crit_value_10pct_mean = col_double(),
##   half_life_mean = col_double(),
##   df_stat_median = col_double(),
##   crit_value_1pct_median = col_double(),
##   crit_value_5pct_median = col_double(),
##   crit_value_10pct_median = col_double(),
##   half_life_median = col_double(),
##   time_resolution = col_integer(),
##   start_date = col_date(format = ""),
##   end_date = col_date(format = ""),
##   length = col_integer()
## )
## # A tibble: 18,600 x 14
##    df_stat_mean crit_value_1pct_mean crit_value_5pct_mean
##           <dbl>                <dbl>                <dbl>
##  1    -2.705763                -3.43                -2.86
##  2    -2.205763                -3.43                -2.86
##  3    -2.522635                -3.43                -2.86
##  4    -3.358555                -3.43                -2.86
##  5    -1.919454                -3.43                -2.86
##  6    -2.964059                -3.43                -2.86
##  7    -2.594580                -3.43                -2.86
##  8    -2.211002                -3.51                -2.89
##  9    -3.661327                -3.43                -2.86
## 10    -2.529785                -3.58                -2.93
## # ... with 18,590 more rows, and 11 more variables:
## #   crit_value_10pct_mean <dbl>, half_life_mean <dbl>,
## #   df_stat_median <dbl>, crit_value_1pct_median <dbl>,
## #   crit_value_5pct_median <dbl>, crit_value_10pct_median <dbl>,
## #   half_life_median <dbl>, time_resolution <int>, start_date <date>,
## #   end_date <date>, length <int>

2. Prepare Data and Calculate Statistics

For each time resolution, prepare the pricing data and test for cointegration for all 98 coin pairs. The date of study is 2017-09-01 to 2017-09-30. This period has exhibited strong mean reversion.

pricing_data_300 <- prepare_data(time_resolution = 300, start_date = "2017-09-01", end_date = "2017-09-30")
pricing_data_900 <- prepare_data(time_resolution = 900, start_date = "2017-09-01", end_date = "2017-09-30")
pricing_data_1800 <- prepare_data(time_resolution = 1800, start_date = "2017-09-01", end_date = "2017-09-30")
pricing_data_7200 <- prepare_data(time_resolution = 7200, start_date = "2017-09-01", end_date = "2017-09-30")
pricing_data_14400 <- prepare_data(time_resolution = 14400, start_date = "2017-09-01", end_date = "2017-09-30")
pricing_data_86400 <- prepare_data(time_resolution = 86400, start_date = "2017-09-01", end_date = "2017-09-30")

coin_pairs_300 <- calculate_statistics(pricing_data = pricing_data_300, coin_pairs = create_coins())
coin_pairs_900 <- calculate_statistics(pricing_data = pricing_data_900, coin_pairs = create_coins())
coin_pairs_1800 <- calculate_statistics(pricing_data = pricing_data_1800, coin_pairs = create_coins())
coin_pairs_7200 <- calculate_statistics(pricing_data = pricing_data_7200, coin_pairs = create_coins())
coin_pairs_14400 <- calculate_statistics(pricing_data = pricing_data_14400, coin_pairs = create_coins())
coin_pairs_86400 <- calculate_statistics(pricing_data = pricing_data_86400, coin_pairs = create_coins())

3. Plot Time Resolution 300

For each time resolution, plot the top 10 coins ranked by the ADF test statistic.

for (i in 1:10) { 
  coin_y <- coin_pairs_300[["coin_y"]][i] 
  coin_x <- coin_pairs_300[["coin_x"]][i] 
  print(str_c("Generating plots for ", coin_y, " and ", coin_x, "."))
  plot_coins(df = pricing_data_300, 
             coin_y = pricing_data_300[[coin_y]], 
             coin_x = pricing_data_300[[coin_x]])
}
## [1] "Generating plots for BTC_FCT and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00056360 -0.00011963 -0.00000535  0.00010828  0.00095778 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) -0.00043456  0.00001868  -23.26 <0.0000000000000002 ***
## coin_x       0.37427940  0.00124815  299.87 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0001921 on 8351 degrees of freedom
## Multiple R-squared:  0.915,  Adjusted R-squared:  0.915 
## F-statistic: 8.992e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_LTC and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00227102 -0.00032479 -0.00002686  0.00030335  0.00162803 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 0.00232629 0.00004218   55.15 <0.0000000000000002 ***
## coin_x      2.44475292 0.00815280  299.87 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0004909 on 8351 degrees of freedom
## Multiple R-squared:  0.915,  Adjusted R-squared:  0.915 
## F-statistic: 8.992e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_XEM and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000073779 -0.0000013072  0.0000001221  0.0000012134  0.0000070039 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000364478 0.0000001387   262.7 <0.0000000000000002 ***
## coin_x      0.0047456380 0.0000268107   177.0 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001614 on 8351 degrees of freedom
## Multiple R-squared:  0.7896, Adjusted R-squared:  0.7895 
## F-statistic: 3.133e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_XEM and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##          Min           1Q       Median           3Q          Max 
## -0.000007554 -0.000001342  0.000000035  0.000001233  0.000006823 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000342914 0.0000001786   192.0 <0.0000000000000002 ***
## coin_x      0.0017825242 0.0000119346   149.4 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001836 on 8351 degrees of freedom
## Multiple R-squared:  0.7276, Adjusted R-squared:  0.7276 
## F-statistic: 2.231e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_REP and USDT_BTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.8470 -0.5730 -0.1290  0.4191  4.2581 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) -9.76564090  0.10152549  -96.19 <0.0000000000000002 ***
## coin_x       0.00741490  0.00002486  298.23 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8201 on 8351 degrees of freedom
## Multiple R-squared:  0.9142, Adjusted R-squared:  0.9142 
## F-statistic: 8.894e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_FCT and BTC_XEM."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00124496 -0.00026763  0.00002131  0.00022386  0.00115275 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept)  -0.00498391   0.00005725  -87.06 <0.0000000000000002 ***
## coin_x      166.37415064   0.93993822  177.00 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0003022 on 8351 degrees of freedom
## Multiple R-squared:  0.7896, Adjusted R-squared:  0.7895 
## F-statistic: 3.133e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_BTC and USDT_REP."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -535.99  -52.48   12.85   73.27  231.70 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 1553.1077     8.5097   182.5 <0.0000000000000002 ***
## coin_x       123.2873     0.4134   298.2 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 105.7 on 8351 degrees of freedom
## Multiple R-squared:  0.9142, Adjusted R-squared:  0.9142 
## F-statistic: 8.894e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_XMR and USDT_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -12.7857  -1.6548  -0.3121   1.0235  24.4679 
## 
## Coefficients:
##             Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 35.96177    0.23045   156.1 <0.0000000000000002 ***
## coin_x       1.13133    0.00371   304.9 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.976 on 8351 degrees of freedom
## Multiple R-squared:  0.9176, Adjusted R-squared:  0.9176 
## F-statistic: 9.297e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_LTC and USDT_XMR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -18.4296  -1.3426  -0.0774   1.4087  10.5354 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) -24.14007    0.28163  -85.72 <0.0000000000000002 ***
## coin_x        0.81106    0.00266  304.91 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.366 on 8351 degrees of freedom
## Multiple R-squared:  0.9176, Adjusted R-squared:  0.9176 
## F-statistic: 9.297e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_LTC and BTC_XEM."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00261762 -0.00071480 -0.00007712  0.00068928  0.00282866 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept)  -0.0099463   0.0001665  -59.75 <0.0000000000000002 ***
## coin_x      408.1931633   2.7329907  149.36 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0008788 on 8351 degrees of freedom
## Multiple R-squared:  0.7276, Adjusted R-squared:  0.7276 
## F-statistic: 2.231e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

4. Plot Time Resolution 900

for (i in 1:10) { 
  coin_y <- coin_pairs_900[["coin_y"]][i] 
  coin_x <- coin_pairs_900[["coin_x"]][i] 
  print(str_c("Generating plots for ", coin_y, " and ", coin_x, "."))
  plot_coins(df = pricing_data_900, 
             coin_y = pricing_data_900[[coin_y]], 
             coin_x = pricing_data_900[[coin_x]])
}
## [1] "Generating plots for BTC_FCT and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00055808 -0.00012162 -0.00000462  0.00010660  0.00095809 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) -0.0004369  0.0000323  -13.53 <0.0000000000000002 ***
## coin_x       0.3744102  0.0021583  173.47 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0001919 on 2783 degrees of freedom
## Multiple R-squared:  0.9153, Adjusted R-squared:  0.9153 
## F-statistic: 3.009e+04 on 1 and 2783 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_XEM and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000072207 -0.0000013040  0.0000001089  0.0000012053  0.0000058784 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000364330 0.0000002396   152.1 <0.0000000000000002 ***
## coin_x      0.0047490978 0.0000463101   102.5 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001611 on 2783 degrees of freedom
## Multiple R-squared:  0.7907, Adjusted R-squared:  0.7907 
## F-statistic: 1.052e+04 on 1 and 2783 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_LTC and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00227198 -0.00032548 -0.00002378  0.00030445  0.00161311 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 0.00232712 0.00007291   31.92 <0.0000000000000002 ***
## coin_x      2.44477302 0.01409314  173.47 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0004902 on 2783 degrees of freedom
## Multiple R-squared:  0.9153, Adjusted R-squared:  0.9153 
## F-statistic: 3.009e+04 on 1 and 2783 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_XEM and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##          Min           1Q       Median           3Q          Max 
## -0.000007554 -0.000001345  0.000000029  0.000001240  0.000006653 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) 0.000034272 0.000000309  110.92 <0.0000000000000002 ***
## coin_x      0.001783861 0.000020643   86.41 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001835 on 2783 degrees of freedom
## Multiple R-squared:  0.7285, Adjusted R-squared:  0.7284 
## F-statistic:  7467 on 1 and 2783 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_FCT and BTC_XEM."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00105765 -0.00026822  0.00002412  0.00022376  0.00111410 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept)  -0.00499249   0.00009889  -50.49 <0.0000000000000002 ***
## coin_x      166.50403031   1.62363819  102.55 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0003016 on 2783 degrees of freedom
## Multiple R-squared:  0.7907, Adjusted R-squared:  0.7907 
## F-statistic: 1.052e+04 on 1 and 2783 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_XMR and USDT_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -10.7046  -1.6898  -0.3227   1.0009  24.1214 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 35.967359   0.398511   90.25 <0.0000000000000002 ***
## coin_x       1.131332   0.006417  176.29 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.971 on 2783 degrees of freedom
## Multiple R-squared:  0.9178, Adjusted R-squared:  0.9178 
## F-statistic: 3.108e+04 on 1 and 2783 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_LTC and USDT_XMR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -18.1291  -1.3225  -0.0763   1.4338   8.8500 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) -24.167337   0.487184  -49.61 <0.0000000000000002 ***
## coin_x        0.811269   0.004602  176.29 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.362 on 2783 degrees of freedom
## Multiple R-squared:  0.9178, Adjusted R-squared:  0.9178 
## F-statistic: 3.108e+04 on 1 and 2783 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_LTC and BTC_XEM."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00239641 -0.00071868 -0.00008315  0.00069136  0.00283113 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept)  -0.0099584   0.0002878  -34.60 <0.0000000000000002 ***
## coin_x      408.3809852   4.7259022   86.41 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000878 on 2783 degrees of freedom
## Multiple R-squared:  0.7285, Adjusted R-squared:  0.7284 
## F-statistic:  7467 on 1 and 2783 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_REP and USDT_BTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.7288 -0.5774 -0.1290  0.4189  4.2573 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) -9.73062649  0.17668477  -55.07 <0.0000000000000002 ***
## coin_x       0.00740622  0.00004327  171.16 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8245 on 2783 degrees of freedom
## Multiple R-squared:  0.9132, Adjusted R-squared:  0.9132 
## F-statistic: 2.929e+04 on 1 and 2783 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_BTC and USDT_REP."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -536.07  -53.24   12.89   73.00  215.86 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 1552.7191    14.8285   104.7 <0.0000000000000002 ***
## coin_x       123.3072     0.7204   171.2 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 106.4 on 2783 degrees of freedom
## Multiple R-squared:  0.9132, Adjusted R-squared:  0.9132 
## F-statistic: 2.929e+04 on 1 and 2783 DF,  p-value: < 0.00000000000000022

5. Plot Time Resolution 1800

for (i in 1:10) { 
  coin_y <- coin_pairs_1800[["coin_y"]][i] 
  coin_x <- coin_pairs_1800[["coin_x"]][i] 
  print(str_c("Generating plots for ", coin_y, " and ", coin_x, "."))
  plot_coins(df = pricing_data_1800, 
             coin_y = pricing_data_1800[[coin_y]], 
             coin_x = pricing_data_1800[[coin_x]])
}
## [1] "Generating plots for BTC_FCT and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00054158 -0.00012031 -0.00000488  0.00010781  0.00095790 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) -0.00043606  0.00004576  -9.528 <0.0000000000000002 ***
## coin_x       0.37436682  0.00305825 122.412 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0001924 on 1391 degrees of freedom
## Multiple R-squared:  0.9151, Adjusted R-squared:  0.915 
## F-statistic: 1.498e+04 on 1 and 1391 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_LTC and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00227054 -0.00033010 -0.00002274  0.00030218  0.00152761 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0023288  0.0001033   22.55 <0.0000000000000002 ***
## coin_x      2.4442798  0.0199676  122.41 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0004917 on 1391 degrees of freedom
## Multiple R-squared:  0.9151, Adjusted R-squared:  0.915 
## F-statistic: 1.498e+04 on 1 and 1391 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_XEM and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000072230 -0.0000013105  0.0000001077  0.0000012007  0.0000042681 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000364865 0.0000003386  107.74 <0.0000000000000002 ***
## coin_x      0.0047382118 0.0000654686   72.37 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001612 on 1391 degrees of freedom
## Multiple R-squared:  0.7902, Adjusted R-squared:   0.79 
## F-statistic:  5238 on 1 and 1391 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_XMR and USDT_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -10.6872  -1.6639  -0.3182   0.9912  24.1493 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 35.992859   0.560945   64.17 <0.0000000000000002 ***
## coin_x       1.130652   0.009035  125.14 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.957 on 1391 degrees of freedom
## Multiple R-squared:  0.9184, Adjusted R-squared:  0.9184 
## F-statistic: 1.566e+04 on 1 and 1391 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_FCT and BTC_XEM."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00078675 -0.00026591  0.00002464  0.00021892  0.00111631 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept)  -0.0050081   0.0001403  -35.69 <0.0000000000000002 ***
## coin_x      166.7640343   2.3042050   72.37 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0003024 on 1391 degrees of freedom
## Multiple R-squared:  0.7902, Adjusted R-squared:   0.79 
## F-statistic:  5238 on 1 and 1391 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_LTC and USDT_XMR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -18.1857  -1.3133  -0.0869   1.3680   8.8470 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) -24.263151   0.686976  -35.32 <0.0000000000000002 ***
## coin_x        0.812293   0.006491  125.14 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.354 on 1391 degrees of freedom
## Multiple R-squared:  0.9184, Adjusted R-squared:  0.9184 
## F-statistic: 1.566e+04 on 1 and 1391 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_XEM and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000075557 -0.0000013567 -0.0000000041  0.0000012434  0.0000065578 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000343156 0.0000004359   78.73 <0.0000000000000002 ***
## coin_x      0.0017808785 0.0000291278   61.14 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001833 on 1391 degrees of freedom
## Multiple R-squared:  0.7288, Adjusted R-squared:  0.7286 
## F-statistic:  3738 on 1 and 1391 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_REP and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00046434 -0.00013920 -0.00003941  0.00010537  0.00093452 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 0.00318808 0.00004553   70.02 <0.0000000000000002 ***
## coin_x      0.12154940 0.00304290   39.95 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0001915 on 1391 degrees of freedom
## Multiple R-squared:  0.5343, Adjusted R-squared:  0.5339 
## F-statistic:  1596 on 1 and 1391 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_REP and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00040455 -0.00013234 -0.00003214  0.00009584  0.00111191 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 0.00329043 0.00003672   89.60 <0.0000000000000002 ***
## coin_x      0.33232514 0.00709972   46.81 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0001748 on 1391 degrees of freedom
## Multiple R-squared:  0.6117, Adjusted R-squared:  0.6114 
## F-statistic:  2191 on 1 and 1391 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_REP and USDT_BTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.7184 -0.5726 -0.1294  0.4224  4.2610 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) -9.76197830  0.24983070  -39.07 <0.0000000000000002 ***
## coin_x       0.00741325  0.00006119  121.15 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8245 on 1391 degrees of freedom
## Multiple R-squared:  0.9134, Adjusted R-squared:  0.9134 
## F-statistic: 1.468e+04 on 1 and 1391 DF,  p-value: < 0.00000000000000022

6. Plot Time Resolution 7200

for (i in 1:10) { 
  coin_y <- coin_pairs_7200[["coin_y"]][i] 
  coin_x <- coin_pairs_7200[["coin_x"]][i] 
  print(str_c("Generating plots for ", coin_y, " and ", coin_x, "."))
  plot_coins(df = pricing_data_7200, 
             coin_y = pricing_data_7200[[coin_y]], 
             coin_x = pricing_data_7200[[coin_x]])
}
## [1] "Generating plots for BTC_FCT and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00052091 -0.00011245 -0.00000505  0.00010542  0.00077570 
## 
## Coefficients:
##                Estimate  Std. Error t value             Pr(>|t|)    
## (Intercept) -0.00042656  0.00008836  -4.828           0.00000208 ***
## coin_x       0.37359044  0.00590826  63.232 < 0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0001862 on 347 degrees of freedom
## Multiple R-squared:  0.9201, Adjusted R-squared:  0.9199 
## F-statistic:  3998 on 1 and 347 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_LTC and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00179524 -0.00033240 -0.00003034  0.00029028  0.00151299 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0022373  0.0002013   11.12 <0.0000000000000002 ***
## coin_x      2.4629726  0.0389514   63.23 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0004782 on 347 degrees of freedom
## Multiple R-squared:  0.9201, Adjusted R-squared:  0.9199 
## F-statistic:  3998 on 1 and 347 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_XMR and USDT_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -10.6386  -1.6524  -0.2642   0.9648  19.3184 
## 
## Coefficients:
##             Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 35.99738    1.08940   33.04 <0.0000000000000002 ***
## coin_x       1.12981    0.01756   64.34 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.855 on 347 degrees of freedom
## Multiple R-squared:  0.9227, Adjusted R-squared:  0.9224 
## F-statistic:  4140 on 1 and 347 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_XEM and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000071754 -0.0000012264  0.0000002238  0.0000012103  0.0000033546 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000362056 0.0000006904   52.44 <0.0000000000000002 ***
## coin_x      0.0047877417 0.0001336227   35.83 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.00000164 on 347 degrees of freedom
## Multiple R-squared:  0.7872, Adjusted R-squared:  0.7866 
## F-statistic:  1284 on 1 and 347 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_XEM and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000075117 -0.0000013231 -0.0000000155  0.0000012043  0.0000060980 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000341619 0.0000008857   38.57 <0.0000000000000002 ***
## coin_x      0.0017887492 0.0000592241   30.20 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001867 on 347 degrees of freedom
## Multiple R-squared:  0.7244, Adjusted R-squared:  0.7236 
## F-statistic: 912.2 on 1 and 347 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_ETH and BTC_DCR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.0045184 -0.0015447 -0.0001920  0.0009797  0.0105041 
## 
## Coefficients:
##             Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 0.059437   0.001297   45.82 <0.0000000000000002 ***
## coin_x      1.636735   0.162343   10.08 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.002497 on 347 degrees of freedom
## Multiple R-squared:  0.2266, Adjusted R-squared:  0.2243 
## F-statistic: 101.6 on 1 and 347 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_LTC and USDT_XMR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -14.3973  -1.2895   0.0341   1.3039   8.8491 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) -24.68618    1.34197  -18.39 <0.0000000000000002 ***
## coin_x        0.81665    0.01269   64.34 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.278 on 347 degrees of freedom
## Multiple R-squared:  0.9227, Adjusted R-squared:  0.9224 
## F-statistic:  4140 on 1 and 347 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_FCT and BTC_XEM."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00071354 -0.00026205  0.00001448  0.00020874  0.00109150 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept)  -0.0048626   0.0002792  -17.41 <0.0000000000000002 ***
## coin_x      164.4245538   4.5889816   35.83 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000304 on 347 degrees of freedom
## Multiple R-squared:  0.7872, Adjusted R-squared:  0.7866 
## F-statistic:  1284 on 1 and 347 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_ETH and BTC_DASH."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.0038536 -0.0016410 -0.0004824  0.0009370  0.0104390 
## 
## Coefficients:
##             Estimate Std. Error t value             Pr(>|t|)    
## (Intercept) 0.057670   0.001762   32.72 < 0.0000000000000002 ***
## coin_x      0.182259   0.021670    8.41  0.00000000000000108 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.002588 on 347 degrees of freedom
## Multiple R-squared:  0.1693, Adjusted R-squared:  0.1669 
## F-statistic: 70.74 on 1 and 347 DF,  p-value: 0.000000000000001076

## [1] "Generating plots for USDT_REP and USDT_BTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.5779 -0.6011 -0.1128  0.4236  2.6516 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) -9.7521113  0.4882912  -19.97 <0.0000000000000002 ***
## coin_x       0.0074100  0.0001196   61.95 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8108 on 347 degrees of freedom
## Multiple R-squared:  0.9171, Adjusted R-squared:  0.9168 
## F-statistic:  3838 on 1 and 347 DF,  p-value: < 0.00000000000000022

7. Plot Time Resolution 14400

for (i in 1:10) { 
  coin_y <- coin_pairs_14400[["coin_y"]][i] 
  coin_x <- coin_pairs_14400[["coin_x"]][i] 
  print(str_c("Generating plots for ", coin_y, " and ", coin_x, "."))
  plot_coins(df = pricing_data_14400, 
             coin_y = pricing_data_14400[[coin_y]], 
             coin_x = pricing_data_14400[[coin_x]])
}
## [1] "Generating plots for USDT_XMR and USDT_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -10.5723  -1.8244  -0.2084   0.9656  19.3276 
## 
## Coefficients:
##             Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 35.71162    1.51967   23.50 <0.0000000000000002 ***
## coin_x       1.13329    0.02451   46.24 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.818 on 173 degrees of freedom
## Multiple R-squared:  0.9251, Adjusted R-squared:  0.9247 
## F-statistic:  2138 on 1 and 173 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_FCT and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00051215 -0.00011886 -0.00000526  0.00010429  0.00068082 
## 
## Coefficients:
##               Estimate Std. Error t value             Pr(>|t|)    
## (Intercept) -0.0004488  0.0001255  -3.577             0.000451 ***
## coin_x       0.3751717  0.0083977  44.675 < 0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0001877 on 173 degrees of freedom
## Multiple R-squared:  0.9202, Adjusted R-squared:  0.9198 
## F-statistic:  1996 on 1 and 173 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for USDT_LTC and USDT_XMR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -14.4427  -1.3155   0.0483   1.2022   8.7895 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) -24.59567    1.86460  -13.19 <0.0000000000000002 ***
## coin_x        0.81633    0.01765   46.24 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.241 on 173 degrees of freedom
## Multiple R-squared:  0.9251, Adjusted R-squared:  0.9247 
## F-statistic:  2138 on 1 and 173 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_LTC and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00157619 -0.00034473 -0.00003136  0.00030762  0.00132800 
## 
## Coefficients:
##              Estimate Std. Error t value             Pr(>|t|)    
## (Intercept) 0.0022849  0.0002835    8.06     0.00000000000012 ***
## coin_x      2.4528383  0.0549037   44.67 < 0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.00048 on 173 degrees of freedom
## Multiple R-squared:  0.9202, Adjusted R-squared:  0.9198 
## F-statistic:  1996 on 1 and 173 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_ETH and BTC_DCR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.0044307 -0.0014917 -0.0000537  0.0009747  0.0102198 
## 
## Coefficients:
##             Estimate Std. Error t value             Pr(>|t|)    
## (Intercept)  0.05948    0.00182  32.685 < 0.0000000000000002 ***
## coin_x       1.62821    0.22779   7.148      0.0000000000237 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.002476 on 173 degrees of freedom
## Multiple R-squared:  0.228,  Adjusted R-squared:  0.2235 
## F-statistic: 51.09 on 1 and 173 DF,  p-value: 0.00000000002368

## [1] "Generating plots for BTC_ETH and BTC_DASH."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.0038341 -0.0016368 -0.0004610  0.0009655  0.0099446 
## 
## Coefficients:
##             Estimate Std. Error t value             Pr(>|t|)    
## (Intercept) 0.057726   0.002486   23.22 < 0.0000000000000002 ***
## coin_x      0.181335   0.030577    5.93          0.000000016 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.002568 on 173 degrees of freedom
## Multiple R-squared:  0.1689, Adjusted R-squared:  0.1641 
## F-statistic: 35.17 on 1 and 173 DF,  p-value: 0.00000001602

## [1] "Generating plots for BTC_XEM and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000074526 -0.0000012903  0.0000000175  0.0000011949  0.0000057830 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) 0.000033667 0.000001276   26.39 <0.0000000000000002 ***
## coin_x      0.001819995 0.000085378   21.32 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001909 on 173 degrees of freedom
## Multiple R-squared:  0.7243, Adjusted R-squared:  0.7227 
## F-statistic: 454.4 on 1 and 173 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_REP and BTC_DASH."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00061706 -0.00014454 -0.00002468  0.00009220  0.00081652 
## 
## Coefficients:
##               Estimate Std. Error t value             Pr(>|t|)    
## (Intercept)  0.0067990  0.0002285   29.75 < 0.0000000000000002 ***
## coin_x      -0.0223197  0.0028111   -7.94    0.000000000000245 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0002361 on 173 degrees of freedom
## Multiple R-squared:  0.2671, Adjusted R-squared:  0.2628 
## F-statistic: 63.04 on 1 and 173 DF,  p-value: 0.0000000000002455

## [1] "Generating plots for BTC_XEM and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000071121 -0.0000012184  0.0000001797  0.0000013048  0.0000033317 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000358382 0.0000009897   36.21 <0.0000000000000002 ***
## coin_x      0.0048523178 0.0001916733   25.32 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001676 on 173 degrees of freedom
## Multiple R-squared:  0.7874, Adjusted R-squared:  0.7862 
## F-statistic: 640.9 on 1 and 173 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_REP and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00043173 -0.00013070 -0.00002933  0.00010251  0.00056316 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0032174  0.0001248   25.77 <0.0000000000000002 ***
## coin_x      0.1194186  0.0083552   14.29 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0001868 on 173 degrees of freedom
## Multiple R-squared:  0.5415, Adjusted R-squared:  0.5388 
## F-statistic: 204.3 on 1 and 173 DF,  p-value: < 0.00000000000000022

8. Plot Time Resolution 86400

for (i in 1:10) { 
  coin_y <- coin_pairs_86400[["coin_y"]][i] 
  coin_x <- coin_pairs_86400[["coin_x"]][i] 
  print(str_c("Generating plots for ", coin_y, " and ", coin_x, "."))
  plot_coins(df = pricing_data_86400, 
             coin_y = pricing_data_86400[[coin_y]], 
             coin_x = pricing_data_86400[[coin_x]])
}
## [1] "Generating plots for BTC_LTC and BTC_FCT."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00063059 -0.00031038 -0.00005205  0.00020536  0.00114214 
## 
## Coefficients:
##             Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 0.001481   0.000630   2.352              0.0262 *  
## coin_x      2.625837   0.124123  21.155 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0004136 on 27 degrees of freedom
## Multiple R-squared:  0.9431, Adjusted R-squared:  0.941 
## F-statistic: 447.5 on 1 and 27 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_FCT and BTC_LTC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00037143 -0.00006396  0.00000057  0.00009761  0.00028788 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) -0.0002454  0.0002513  -0.977               0.337    
## coin_x       0.3591627  0.0169776  21.155 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000153 on 27 degrees of freedom
## Multiple R-squared:  0.9431, Adjusted R-squared:  0.941 
## F-statistic: 447.5 on 1 and 27 DF,  p-value: < 0.00000000000000022

## [1] "Generating plots for BTC_ETH and BTC_DASH."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.003306 -0.001553 -0.000233  0.001127  0.004917 
## 
## Coefficients:
##             Estimate Std. Error t value         Pr(>|t|)    
## (Intercept) 0.058642   0.005179  11.323 0.00000000000927 ***
## coin_x      0.167030   0.063661   2.624           0.0141 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.002105 on 27 degrees of freedom
## Multiple R-squared:  0.2032, Adjusted R-squared:  0.1737 
## F-statistic: 6.884 on 1 and 27 DF,  p-value: 0.01413

## [1] "Generating plots for BTC_ETH and BTC_DCR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.0039316 -0.0011388  0.0000272  0.0010440  0.0043721 
## 
## Coefficients:
##             Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 0.060575   0.003816  15.874 0.00000000000000324 ***
## coin_x      1.457476   0.476382   3.059             0.00496 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.002032 on 27 degrees of freedom
## Multiple R-squared:  0.2574, Adjusted R-squared:  0.2299 
## F-statistic:  9.36 on 1 and 27 DF,  p-value: 0.004964

## [1] "Generating plots for BTC_REP and BTC_DASH."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00028213 -0.00010269  0.00002135  0.00006380  0.00035581 
## 
## Coefficients:
##               Estimate Std. Error t value             Pr(>|t|)    
## (Intercept)  0.0068313  0.0004061  16.824 0.000000000000000776 ***
## coin_x      -0.0229002  0.0049910  -4.588 0.000092072428839062 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0001651 on 27 degrees of freedom
## Multiple R-squared:  0.4381, Adjusted R-squared:  0.4173 
## F-statistic: 21.05 on 1 and 27 DF,  p-value: 0.00009207

## [1] "Generating plots for BTC_REP and BTC_DCR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00037576 -0.00012338 -0.00003018  0.00007637  0.00042575 
## 
## Coefficients:
##               Estimate Std. Error t value             Pr(>|t|)    
## (Intercept)  0.0061315  0.0003475  17.643 0.000000000000000238 ***
## coin_x      -0.1452727  0.0433855  -3.348              0.00241 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0001851 on 27 degrees of freedom
## Multiple R-squared:  0.2934, Adjusted R-squared:  0.2672 
## F-statistic: 11.21 on 1 and 27 DF,  p-value: 0.002406

## [1] "Generating plots for BTC_DCR and BTC_DASH."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.0010470 -0.0002754  0.0001094  0.0003866  0.0006420 
## 
## Coefficients:
##               Estimate Std. Error t value    Pr(>|t|)    
## (Intercept) -0.0004812  0.0011910  -0.404       0.689    
## coin_x       0.1041891  0.0146396   7.117 0.000000119 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0004842 on 27 degrees of freedom
## Multiple R-squared:  0.6523, Adjusted R-squared:  0.6394 
## F-statistic: 50.65 on 1 and 27 DF,  p-value: 0.0000001185

## [1] "Generating plots for BTC_ETH and BTC_XMR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.0032331 -0.0018057 -0.0002109  0.0012201  0.0046517 
## 
## Coefficients:
##              Estimate Std. Error t value        Pr(>|t|)    
## (Intercept)  0.075642   0.007091  10.667 0.0000000000349 ***
## coin_x      -0.135217   0.277424  -0.487            0.63    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.002348 on 27 degrees of freedom
## Multiple R-squared:  0.008722,   Adjusted R-squared:  -0.02799 
## F-statistic: 0.2376 on 1 and 27 DF,  p-value: 0.6299

## [1] "Generating plots for BTC_DASH and BTC_DCR."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.0056744 -0.0029498 -0.0004756  0.0029110  0.0100101 
## 
## Coefficients:
##             Estimate Std. Error t value    Pr(>|t|)    
## (Intercept) 0.031220   0.007047   4.431    0.000141 ***
## coin_x      6.260641   0.879679   7.117 0.000000119 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.003753 on 27 degrees of freedom
## Multiple R-squared:  0.6523, Adjusted R-squared:  0.6394 
## F-statistic: 50.65 on 1 and 27 DF,  p-value: 0.0000001185

## [1] "Generating plots for BTC_LSK and BTC_ZEC."
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.00020605 -0.00006745  0.00002737  0.00004922  0.00013792 
## 
## Coefficients:
##               Estimate Std. Error t value           Pr(>|t|)    
## (Intercept)  0.0018896  0.0001345  14.051 0.0000000000000619 ***
## coin_x      -0.0065288  0.0024493  -2.666             0.0128 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.00008788 on 27 degrees of freedom
## Multiple R-squared:  0.2083, Adjusted R-squared:  0.179 
## F-statistic: 7.105 on 1 and 27 DF,  p-value: 0.01282

9. BTC_XEM and BTC_LTC Coin Pair

An examination of BTC_XEM and BTC_LTC across time resolutions.

plot_coins(df = pricing_data_300, 
           coin_y = pricing_data_300[["BTC_XEM"]], 
           coin_x = pricing_data_300[["BTC_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##          Min           1Q       Median           3Q          Max 
## -0.000007554 -0.000001342  0.000000035  0.000001233  0.000006823 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000342914 0.0000001786   192.0 <0.0000000000000002 ***
## coin_x      0.0017825242 0.0000119346   149.4 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001836 on 8351 degrees of freedom
## Multiple R-squared:  0.7276, Adjusted R-squared:  0.7276 
## F-statistic: 2.231e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_900, 
           coin_y = pricing_data_900[["BTC_XEM"]], 
           coin_x = pricing_data_900[["BTC_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##          Min           1Q       Median           3Q          Max 
## -0.000007554 -0.000001345  0.000000029  0.000001240  0.000006653 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) 0.000034272 0.000000309  110.92 <0.0000000000000002 ***
## coin_x      0.001783861 0.000020643   86.41 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001835 on 2783 degrees of freedom
## Multiple R-squared:  0.7285, Adjusted R-squared:  0.7284 
## F-statistic:  7467 on 1 and 2783 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_1800, 
           coin_y = pricing_data_1800[["BTC_XEM"]], 
           coin_x = pricing_data_1800[["BTC_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000075557 -0.0000013567 -0.0000000041  0.0000012434  0.0000065578 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000343156 0.0000004359   78.73 <0.0000000000000002 ***
## coin_x      0.0017808785 0.0000291278   61.14 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001833 on 1391 degrees of freedom
## Multiple R-squared:  0.7288, Adjusted R-squared:  0.7286 
## F-statistic:  3738 on 1 and 1391 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_7200, 
           coin_y = pricing_data_7200[["BTC_XEM"]], 
           coin_x = pricing_data_7200[["BTC_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000075117 -0.0000013231 -0.0000000155  0.0000012043  0.0000060980 
## 
## Coefficients:
##                 Estimate   Std. Error t value            Pr(>|t|)    
## (Intercept) 0.0000341619 0.0000008857   38.57 <0.0000000000000002 ***
## coin_x      0.0017887492 0.0000592241   30.20 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001867 on 347 degrees of freedom
## Multiple R-squared:  0.7244, Adjusted R-squared:  0.7236 
## F-statistic: 912.2 on 1 and 347 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_14400, 
           coin_y = pricing_data_14400[["BTC_XEM"]], 
           coin_x = pricing_data_14400[["BTC_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000074526 -0.0000012903  0.0000000175  0.0000011949  0.0000057830 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) 0.000033667 0.000001276   26.39 <0.0000000000000002 ***
## coin_x      0.001819995 0.000085378   21.32 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000001909 on 173 degrees of freedom
## Multiple R-squared:  0.7243, Adjusted R-squared:  0.7227 
## F-statistic: 454.4 on 1 and 173 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_86400, 
           coin_y = pricing_data_86400[["BTC_XEM"]], 
           coin_x = pricing_data_86400[["BTC_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##           Min            1Q        Median            3Q           Max 
## -0.0000072622 -0.0000010911  0.0000001578  0.0000013416  0.0000027461 
## 
## Coefficients:
##                Estimate  Std. Error t value       Pr(>|t|)    
## (Intercept) 0.000034025 0.000003437   9.899 0.000000000176 ***
## coin_x      0.001780634 0.000232186   7.669 0.000000030065 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000002092 on 27 degrees of freedom
## Multiple R-squared:  0.6854, Adjusted R-squared:  0.6737 
## F-statistic: 58.81 on 1 and 27 DF,  p-value: 0.00000003007

9. USDT_REP and USDT_BTC Coin Pair

An examination of USDT_REP and USDT_BTC across time resolutions.

plot_coins(df = pricing_data_300, 
           coin_y = pricing_data_300[["USDT_REP"]], 
           coin_x = pricing_data_300[["USDT_BTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.8470 -0.5730 -0.1290  0.4191  4.2581 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) -9.76564090  0.10152549  -96.19 <0.0000000000000002 ***
## coin_x       0.00741490  0.00002486  298.23 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8201 on 8351 degrees of freedom
## Multiple R-squared:  0.9142, Adjusted R-squared:  0.9142 
## F-statistic: 8.894e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_900, 
           coin_y = pricing_data_900[["USDT_REP"]], 
           coin_x = pricing_data_900[["USDT_BTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.7288 -0.5774 -0.1290  0.4189  4.2573 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) -9.73062649  0.17668477  -55.07 <0.0000000000000002 ***
## coin_x       0.00740622  0.00004327  171.16 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8245 on 2783 degrees of freedom
## Multiple R-squared:  0.9132, Adjusted R-squared:  0.9132 
## F-statistic: 2.929e+04 on 1 and 2783 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_1800, 
           coin_y = pricing_data_1800[["USDT_REP"]], 
           coin_x = pricing_data_1800[["USDT_BTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.7184 -0.5726 -0.1294  0.4224  4.2610 
## 
## Coefficients:
##                Estimate  Std. Error t value            Pr(>|t|)    
## (Intercept) -9.76197830  0.24983070  -39.07 <0.0000000000000002 ***
## coin_x       0.00741325  0.00006119  121.15 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8245 on 1391 degrees of freedom
## Multiple R-squared:  0.9134, Adjusted R-squared:  0.9134 
## F-statistic: 1.468e+04 on 1 and 1391 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_7200, 
           coin_y = pricing_data_7200[["USDT_REP"]], 
           coin_x = pricing_data_7200[["USDT_BTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.5779 -0.6011 -0.1128  0.4236  2.6516 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) -9.7521113  0.4882912  -19.97 <0.0000000000000002 ***
## coin_x       0.0074100  0.0001196   61.95 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8108 on 347 degrees of freedom
## Multiple R-squared:  0.9171, Adjusted R-squared:  0.9168 
## F-statistic:  3838 on 1 and 347 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_14400, 
           coin_y = pricing_data_14400[["USDT_REP"]], 
           coin_x = pricing_data_14400[["USDT_BTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.55987 -0.59252 -0.09366  0.44002  2.14749 
## 
## Coefficients:
##               Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) -9.6484195  0.6844643  -14.10 <0.0000000000000002 ***
## coin_x       0.0073797  0.0001676   44.03 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8098 on 173 degrees of freedom
## Multiple R-squared:  0.9181, Adjusted R-squared:  0.9176 
## F-statistic:  1939 on 1 and 173 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_86400, 
           coin_y = pricing_data_86400[["USDT_REP"]], 
           coin_x = pricing_data_86400[["USDT_BTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.4944 -0.3292 -0.1622  0.4061  1.5361 
## 
## Coefficients:
##               Estimate Std. Error t value             Pr(>|t|)    
## (Intercept) -6.9069160  1.4791046   -4.67             0.000074 ***
## coin_x       0.0066972  0.0003638   18.41 < 0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.6775 on 27 degrees of freedom
## Multiple R-squared:  0.9262, Adjusted R-squared:  0.9235 
## F-statistic: 338.9 on 1 and 27 DF,  p-value: < 0.00000000000000022

10. USDT_XMR and USDT_LTC Coin Pair

An examination of USDT_XMR and USDT_LTC across time resolutions.

plot_coins(df = pricing_data_300, 
           coin_y = pricing_data_300[["USDT_XMR"]], 
           coin_x = pricing_data_300[["USDT_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -12.7857  -1.6548  -0.3121   1.0235  24.4679 
## 
## Coefficients:
##             Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 35.96177    0.23045   156.1 <0.0000000000000002 ***
## coin_x       1.13133    0.00371   304.9 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.976 on 8351 degrees of freedom
## Multiple R-squared:  0.9176, Adjusted R-squared:  0.9176 
## F-statistic: 9.297e+04 on 1 and 8351 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_900, 
           coin_y = pricing_data_900[["USDT_XMR"]], 
           coin_x = pricing_data_900[["USDT_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -10.7046  -1.6898  -0.3227   1.0009  24.1214 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 35.967359   0.398511   90.25 <0.0000000000000002 ***
## coin_x       1.131332   0.006417  176.29 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.971 on 2783 degrees of freedom
## Multiple R-squared:  0.9178, Adjusted R-squared:  0.9178 
## F-statistic: 3.108e+04 on 1 and 2783 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_1800, 
           coin_y = pricing_data_1800[["USDT_XMR"]], 
           coin_x = pricing_data_1800[["USDT_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -10.6872  -1.6639  -0.3182   0.9912  24.1493 
## 
## Coefficients:
##              Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 35.992859   0.560945   64.17 <0.0000000000000002 ***
## coin_x       1.130652   0.009035  125.14 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.957 on 1391 degrees of freedom
## Multiple R-squared:  0.9184, Adjusted R-squared:  0.9184 
## F-statistic: 1.566e+04 on 1 and 1391 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_7200, 
           coin_y = pricing_data_7200[["USDT_XMR"]], 
           coin_x = pricing_data_7200[["USDT_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -10.6386  -1.6524  -0.2642   0.9648  19.3184 
## 
## Coefficients:
##             Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 35.99738    1.08940   33.04 <0.0000000000000002 ***
## coin_x       1.12981    0.01756   64.34 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.855 on 347 degrees of freedom
## Multiple R-squared:  0.9227, Adjusted R-squared:  0.9224 
## F-statistic:  4140 on 1 and 347 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_14400, 
           coin_y = pricing_data_14400[["USDT_XMR"]], 
           coin_x = pricing_data_14400[["USDT_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -10.5723  -1.8244  -0.2084   0.9656  19.3276 
## 
## Coefficients:
##             Estimate Std. Error t value            Pr(>|t|)    
## (Intercept) 35.71162    1.51967   23.50 <0.0000000000000002 ***
## coin_x       1.13329    0.02451   46.24 <0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.818 on 173 degrees of freedom
## Multiple R-squared:  0.9251, Adjusted R-squared:  0.9247 
## F-statistic:  2138 on 1 and 173 DF,  p-value: < 0.00000000000000022

plot_coins(df = pricing_data_86400, 
           coin_y = pricing_data_86400[["USDT_XMR"]], 
           coin_x = pricing_data_86400[["USDT_LTC"]])
## 
## Call:
## lm(formula = coin_y ~ coin_x, data = df)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -5.410 -1.666  0.186  1.522  5.396 
## 
## Coefficients:
##             Estimate Std. Error t value             Pr(>|t|)    
## (Intercept) 39.92702    2.45102   16.29  0.00000000000000172 ***
## coin_x       1.05803    0.04013   26.36 < 0.0000000000000002 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.415 on 27 degrees of freedom
## Multiple R-squared:  0.9626, Adjusted R-squared:  0.9612 
## F-statistic: 695.1 on 1 and 27 DF,  p-value: < 0.00000000000000022